The present invention relates to technology for data storage.
Semiconductor memory has become increasingly popular for use in various electronic devices. For example, non-volatile semiconductor memory is used in cellular telephones, digital cameras, personal digital assistants, mobile computing devices, non-mobile computing devices and other devices. Electrical Erasable Programmable Read Only Memory (EEPROM) and flash memory are among the most popular non-volatile semiconductor memories.
Non-volatile memories formed from reversible resistance-switching elements are also known. For example, U.S. Patent Application Publication 2006/0250836, published Nov. 9, 2006, and titled “Rewriteable Memory Cell Comprising A Diode And A Resistance-Switching Material,” incorporated herein by reference, describes a rewriteable non-volatile memory cell that includes a diode coupled in series with a reversible resistance-switching material such as a metal oxide or metal nitride. These reversible resistance-switching materials are of interest for use in nonvolatile memory arrays. One resistance state may correspond to a data “0,” for example, while the other resistance state corresponds to a data “1.” Some of these materials may have more than two stable resistance states.
Moreover, various types of volatile memory devices are known, such as DRAM. Further, memory devices can have one layer of storage elements, or multiple layers in so-called 3d memory devices.
For purposes of storing and reading data, a memory device can be structured in units called pages. Each memory device is typically tested before being shipped to the end user to identify bad pages which are not suitable for storing data because of the presence of some defect. Due to manufacturing variations, a number of such bad pages are inevitably identified. Each bad page can be marked to prevent access to it. Typically, an overhead data region of each page can include a flag which identifies the health of the page as being good or bad. In the possession of the end user, when the memory device is powered on, or at other specified times, a controller of the memory device can read each flag to determine whether the associated page is usable. The controller can decide to ignore each bad page, and/or to provide a redundant page in its place. However, a memory device can contain millions of pages, so reading out the information about the health of each page can be unduly time consuming, thus impacting the performance of the memory device.
Techniques are needed for faster readout of bad page data in a memory device.